/**
 * Created by PanJiaChen on 16/11/18.
 */

/**
 * * 把扁平结构的数据, 转成树形控件
 * ? 扁平结构的数组嵌套对象 -> 转换 -> 层级嵌套的数组 + 对象层级结构数据
 * @param {*} list 遍历结构数组
 * @param {*} rootValue 返回数组，第一层对象的 pid 值
 * @returns 数组 + 对象层级结构数据
 */
export function transTree (list, rootValue) {
  // list: 整个数组, rootValue本次要查找的目标id -> 此函数为了找到rootValue目标id的下属们
  const treeData = [] // 装下属对象的
  list.forEach((item) => {
    if (item.pid === rootValue) {
      // 当前对象pid符合, 继续递归调用查找它的下属
      const children = transTree(list, item.id) // 返回item对象下属数组
      if (children.length) item.children = children // 为item添加children属性保存下属数组
      treeData.push(item) // 把当前对象保存到数组里, 继续遍历
    }
  })
  return treeData // 遍历结束, rootValue的id对应下属们收集成功, 返回给上一次递归调用children, 加到父级对象的children属性下
}

export function urlArr (data) {
  if (!data.p_name) return data
  if (data instanceof Array) {
    data.forEach((item) => {
      item.p_name = item.p_name.split(',')
      item.p_name = item.p_name.filter((item) => item)
    })
  } else if (data instanceof Object && typeof data.p_name === 'string') {
    data.p_name = data.p_name.split(',')
    data.p_name = data.p_name.filter((item) => item)
  }
  return data
}

export const imgUrl = 'https:qjtwork-1314843671.cos.ap-guangzhou.myqcloud.com/'

export const repairState = {
  1: '待审核',
  3: '管理员退回',
  2: '维修员退单待重审',
  4: '待接单',
  5: '待前往维修',
  6: '维修完成',
  7: '学生驳回维修状态',
  8: '报修结束'

}

export const tagState = {
  1: 'info',
  2: 'warning',
  3: 'danger',
  4: 'warning',
  5: 'info',
  6: 'success',
  7: 'danger',
  8: 'success'
}

// 返回上一页
export function goBack () {
  this.$router.go(-1)
}
